Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[test optimization] [SDTEST-1529] Add quarantined tests logic #5236

Merged
merged 23 commits into from
Feb 17, 2025

Conversation

juan-fernandez
Copy link
Collaborator

@juan-fernandez juan-fernandez commented Feb 10, 2025

What does this PR do?

  • Read test_management configuration parameter
  • If it's true, request quarantined tests
  • Ignore failed tests that are also quarantined (*)

(*): this is test framework dependent: playwright and cypress actually skip the test altogether (I couldn't find a way to do it any other way). The other frameworks still run the test but prevent the test session from failing.

Motivation

Quarantine allows turning your pipelines green by removing the effect of flaky tests. Flaky tests can then be tackled without your pipelines being red.

Plugin Checklist

  • Unit tests.

### Additional notes

There's a configuration change, so I need to update the system tests. Feel free to ignore system tests errors for the moment.

@juan-fernandez juan-fernandez changed the title [test optimization] Add quarantined tests request [test optimization] [SDTEST-1529] Add quarantined tests request Feb 10, 2025
Copy link

github-actions bot commented Feb 10, 2025

Overall package size

Self size: 8.75 MB
Deduped: 94.95 MB
No deduping: 95.47 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.4.0 | 29.44 MB | 29.44 MB | | @datadog/native-appsec | 8.4.0 | 19.25 MB | 19.26 MB | | @datadog/native-iast-taint-tracking | 3.3.0 | 13.77 MB | 13.78 MB | | @datadog/pprof | 5.5.1 | 9.79 MB | 10.17 MB | | protobufjs | 7.2.5 | 2.77 MB | 5.16 MB | | @datadog/native-iast-rewriter | 2.8.0 | 2.6 MB | 2.74 MB | | @opentelemetry/core | 1.14.0 | 872.87 kB | 1.47 MB | | @datadog/native-metrics | 3.1.0 | 1.06 MB | 1.46 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | import-in-the-middle | 1.11.2 | 112.74 kB | 835.4 kB | | source-map | 0.7.4 | 226 kB | 226 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | lru-cache | 7.18.3 | 133.92 kB | 133.92 kB | | pprof-format | 2.1.0 | 111.69 kB | 111.69 kB | | @datadog/sketches-js | 2.1.0 | 109.9 kB | 109.9 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 5.3.2 | 53.63 kB | 53.63 kB | | shell-quote | 1.8.1 | 44.96 kB | 44.96 kB | | istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 kB | | rfdc | 1.3.1 | 25.21 kB | 25.21 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | dc-polyfill | 0.1.4 | 23.1 kB | 23.1 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | semifies | 1.0.0 | 15.84 kB | 15.84 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | ttl-set | 1.0.0 | 4.61 kB | 9.69 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | koalas | 1.0.2 | 6.47 kB | 6.47 kB | | module-details-from-path | 1.0.3 | 4.47 kB | 4.47 kB |

🤖 This report was automatically generated by heaviest-objects-in-the-universe

Copy link

codecov bot commented Feb 10, 2025

Codecov Report

Attention: Patch coverage is 10.00000% with 90 lines in your changes missing coverage. Please review.

Project coverage is 80.81%. Comparing base (b599fab) to head (4576e12).
Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
packages/datadog-instrumentations/src/cucumber.js 0.00% 24 Missing ⚠️
...ackages/datadog-instrumentations/src/mocha/main.js 0.00% 24 Missing ⚠️
...ibility/quarantined-tests/get-quarantined-tests.js 14.28% 18 Missing ⚠️
...ckages/datadog-instrumentations/src/mocha/utils.js 0.00% 12 Missing ⚠️
packages/datadog-plugin-cucumber/src/index.js 0.00% 4 Missing ⚠️
packages/datadog-plugin-mocha/src/index.js 0.00% 4 Missing ⚠️
.../ci-visibility/exporters/ci-visibility-exporter.js 20.00% 4 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #5236      +/-   ##
==========================================
- Coverage   81.23%   80.81%   -0.42%     
==========================================
  Files         487      483       -4     
  Lines       21720    21698      -22     
==========================================
- Hits        17644    17536     -108     
- Misses       4076     4162      +86     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Feb 10, 2025

Datadog Report

Branch report: juan-fernandez/add-quarantined-tests
Commit report: 3ee01fc
Test service: dd-trace-js-integration-tests

✅ 0 Failed, 669 Passed, 0 Skipped, 15m 49.47s Total Time

@juan-fernandez juan-fernandez changed the title [test optimization] [SDTEST-1529] Add quarantined tests request [test optimization] [SDTEST-1529] Add quarantined tests logic Feb 11, 2025
@pr-commenter
Copy link

pr-commenter bot commented Feb 11, 2025

Benchmarks

Benchmark execution time: 2025-02-17 09:55:42

Comparing candidate commit 4576e12 in PR branch juan-fernandez/add-quarantined-tests with baseline commit b599fab in branch master.

Found 0 performance improvements and 2 performance regressions! Performance is the same for 717 metrics, 19 unstable metrics.

scenario:plugin-graphql-with-async-hooks-18

  • 🟥 execution_time [+293.125ms; +324.145ms] or [+6.075%; +6.718%]
  • 🟥 max_rss_usage [+91.099MB; +93.289MB] or [+17.211%; +17.625%]

@juan-fernandez juan-fernandez marked this pull request as ready for review February 13, 2025 17:04
@juan-fernandez juan-fernandez requested review from a team as code owners February 13, 2025 17:04
anmarchenko
anmarchenko previously approved these changes Feb 14, 2025
@juan-fernandez juan-fernandez merged commit 366368a into master Feb 17, 2025
358 checks passed
@juan-fernandez juan-fernandez deleted the juan-fernandez/add-quarantined-tests branch February 17, 2025 10:01
@watson watson mentioned this pull request Feb 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants